#include <iostream>

/**
	逆序对个数： n*(n-1)/2  =>>  10 0000 * 10 0000 = 100 0000 0000 >  21 4748 3647
**/

using namespace std;

typedef long long LL;

const int N = 100010;

int n;

int q[N],tmp[N];

LL merge_inverse_pair(int q[], int l, int r)
{
	if(l >= r) return 0;
	
	int mid = l + r >> 1;
	
	LL res = merge_inverse_pair(q, l, mid)+ merge_inverse_pair(q, mid + 1, r);
	
	int k = 0, i = l, j = mid + 1;
	while(i <= mid && j<= r)
		if(q[i] <= q[j]) tmp[k++] = q[i++];
		else
		{
			tmp[k++] = q[j++];
			res += mid - i + 1;
		}
	while(i <= mid) tmp[k++] = q[i++];
	while(j <= r) tmp[k++] = q[j++];
	
	for(i = l, j = 0; i <= r; i++, j++) q[i] = tmp[j];
	return res;
}

int main()
{
	scanf("%d",&n);
	
	for(int i = 0; i < n; i ++) scanf("%d",&q[i]);
	
	printf("%lld",merge_inverse_pair(q, 0, n - 1));
	
	return 0;
}